package com.xyht.sca_s.student_manage_system.modules.meeting.entity.resp;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 会议室信息表
 * </p>
 *
 * @author XYHT
 * @since 2023-08-03
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sms_meeting_room_info")
@ApiModel(value = "SmsMeetingRoomInfo对象", description = "会议室信息表")
public class MeetingRoomAndApplyResp implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "会议室id")
    private String id;

    @ApiModelProperty(value = "名称")
    private String name;

    @ApiModelProperty(value = "容量")
    private Integer capacity;

    @ApiModelProperty(value = "设备List")
    private List<String> deviceList;

    @ApiModelProperty(value = "所属组织id")
    private String orgId;

    @ApiModelProperty(value = "所属组织名")
    private String orgName;

    @ApiModelProperty(value = "所属楼栋id")
    private String buildingId;

    @ApiModelProperty(value = "楼栋名")
    private String buildingName;

    @ApiModelProperty(value = "所属层数id")
    private String floorId;

    @ApiModelProperty(value = "所属层名")
    private String floorName;

    @ApiModelProperty(value = "房间号")
    private String roomNum;

    @ApiModelProperty(value = "会议室状态：是否启用[0.禁用 1.启用]")
    private Boolean isUse;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "是否需要审批")
    private Boolean isAllow;

    @ApiModelProperty(value = "审批人idList")
    private List<String> allowUserIdList;

    @ApiModelProperty(value = "是否需要盖章")
    private Boolean isStamp;

    @ApiModelProperty(value = "是否需要签字")
    private Boolean isSign;

    @ApiModelProperty(value = "是否限制预定时间[0.否 1.是]")
    private Boolean isBookTime;

    @ApiModelProperty(value = "开始时间限制")
    private String startTimeLimit;

    @ApiModelProperty(value = "结束时间限制")
    private String endTimeLimit;

    @ApiModelProperty(value = "单次可预订时长上限(分钟数)")
    private Integer singleTimeLimit;

    @ApiModelProperty(value = "最早可提前预定时间(小时数)")
    private Integer earliestBookTime;

    @ApiModelProperty(value = "时间范围集合")
    private List<DateAndTimeRangeResp> dateAndTimeRangeList;
}
